home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Merciful 2
/
Merciful - Disc 2.iso
/
software
/
s
/
screamernetv3.42b1.dms
/
screamernetv3.42b1.adf
/
InstallScreamerNet
< prev
next >
Wrap
Text File
|
1994-06-21
|
27KB
|
521 lines
;**********************************************;
; ;
; ScreamerNet Installer ;
; ;
; by Todd Hayes ;
; ©1994 NewTek, Inc. ;
; ;
; $VER: ScreamerNet Installer 1.0 (4-27-94) ;
; ;
;**********************************************;
(set @appname "ScreamerNet")
(set disk1 "ScreamerNetDisk1:")
(set disk2 "ScreamerNetDisk2:")
(set disk2_name (substr disk2 0 (- (strlen disk2) 1)))
(set disk2_prompt (cat "\n\n\nPlease insert " disk2_name " in any drive..."))
(set batch_start (cat "d:\n"
"ftp -n -s:batch.ftp ami\n"
"start /low delay.cmd\n"))
(set ftp_start (cat "user ftp\n"
"desk\n"
"ascii\n"
"get delay.cmd\n"
"bye\n"))
(set delay_cmd (cat "cd \\raptor\ndelete foo.cmd\nrename batch.cmd "
"foo.cmd\ndelete foo.cmd\n"
":loop\nif not exist \\lw\\done goto loop\n"
"del \\lw\\done\n:down\n"
"\\raptor\\shutdown \\\\.\ngoto down\n"))
(set batch_cmd (cat "if not exist \\raptor\\delay goto begin\n"
" delete \\raptor\\delay\n"
" delete \\lw\\done\n"
":begin\n\n"
"mkdir \\lw\n"
"cd \\lw\n"
"ftp -n -s:\\raptor\\batch.ftp ami\n"
"start startlw\n"
"exit\n"))
(set batch_ftp (cat "user ftp\n"
"desk\n"
"binary\n"
"get lw.exe\n"
"bye\n"))
(set ftp_scr "open ami\nftp\ndesk\ndir\nbye\n\n")
(set script_ftp_body (cat "ftp\n"
"cd d:\n"
"desk\n"
"mkdir /lw\n"
"cd /lw\n"
"lcd net:\n"
"binary\n"
"put lw.exe\n"
"ascii\n"
"put ftp.scr\n"
"put startlw.bat\n"
"cd /raptor\n"
"put batch.cmd\n"
"put batch.ftp\n"
"cd /lw\n"
"put done\n"
"bye\n"))
(set script_ftp_small (cat "ftp\ndesk\ncd d:\ncd /lw\nlcd net:\n"
"cd /lw\nbinary\nput lw.exe\nbye\n"))
(set startlw_main (cat "if not exist lw.new goto nonewlw\n\n"
"del lw.exe\n"
"rename lw.new lw.exe\n\n"
":nonewlw\n\n"
"ftp -s:ftp.scr\n"
"lw screamer00"))
(set inet_size 910000)
(set Lightwave_size 1182000)
(set networks_size 13000)
(set s2_util 0)
(set default_drive (if (exists "Work:" (noreq))
"Work:"
(cat (getdevice "c:") ":")))
(set @default-dest default_drive)
(set sanaII_devs_main (cat "# Sana II devices used by the inet.library\n"
"#device name Unit No IPType ARPType"
" (optional hardware address) Comment\n#------"
"---------------------------------------------"
"--------------------------------------------"
"--\n"))
; Setup Help strings
(set install_type_help (cat "\n\nThis panel allows you to choose the type of "
"installation to perform. Choosing the 'Full "
"Installation' option will install all network "
"software to your Amiga, the local version "
"of Lightwave and Modeler to your Amiga, and "
"the LW.EXE file to all available Screamer "
"processors. The 'Update Lightwave Software' "
"option will allow you to install the new "
"versions of the local and network Lightwave "
"without reinstalling the network software. "))
(set lw_subinstall_help (cat "\n\nThis panel allows you to choose which "
"Lightwave software you would like to "
"install. You may choose to install the "
"version for your local machine, the version "
"for the networked screamer CPUs, or both. "
"These installations assume that you have "
"already installed the ScreamerNet software "
"on your system at some previous time using "
"the 'Full Installation' option from the "
"previous panel."))
(set network_drive_help (cat "\n\nThis panel allows you to choose the directory "
"that you would like to install the network "
"software to. A subdirectory called 'inet' "
"will be created in this directory."))
(set sana2_drivers_help (cat "\n\nFor ScreamerNet to run, you must have "
"a Sana-II Ethernet board and its related "
"software on your system. This panel allows "
"you to choose the Sana-II device that your "
"board uses. These drivers are usually "
"located in your devs:networks drawer.\n"))
(set batch_start_help (cat "\n\nIn order for the installer to send the "
"necessary files over to the Raptor, the "
"Raptor must be kept from shutting itself "
"down. To do this, the installer prepares a "
"batch file that the Raptor will get upon "
"startup and then execute. This file will "
"keep the Raptor busy while the rest of the "
"files are sent to it. "))
(set Lightwave_drive_help (cat "\n\nThis panel allows you to choose the "
"directory that you would like to install "
"the local version of the Lightwave software "
"to. If you have a Video Toaster installed "
"in the system, and you would like to use "
"the same version of Lightwave for the "
"Toaster and ScreamerNet, then the directory "
"that you choose from this panel should be "
"your Toaster directory. NOTE: Choosing the "
"Toaster directory will cause this install "
"to completely replace any version of "
"Lightwave that the Video Toaster installed."))
(set user_startup_help (cat "\n\nThese lines need to be added to your "
"user-startup file in order for ScreamerNet "
"to run. The lines tell the software where to "
"look for certain files."))
(set network_devices_help (cat "\n\nThese devices need to be present in your "
"Devs:networks directory in order for the "
"software to run. If this directory does "
"not exist, it will be created for you."))
(set start_option_help (cat "\n\nThe network software must be started "
"before ScreamerNet will run. This can be "
"done manually by double-clicking on the "
"Start-Screaming icon in the inet: drawer "
"or it can be started automatically when "
"the computer is started by choosing yes "
"on this panel."))
(set copy_lz_help (cat "\n\nThe installer needs to copy lz.decomp to ram: "
"during the installation. This minimizes the "
"amount of disk swapping that must be done during "
"the installation process. Lz.decomp will be "
"deleted when the installer is done with it."))
(set disk2_help (cat "\n\nThe installer needs to get the Lightwave or LW files "
"from the second disk."))
(set all_installed_help (cat "\n\nAll Screamers that were detected have "
"been given the necessary files and "
"should be restarted so that the new "
"software will take effect. If any of your "
"Screamers have apparently not received "
"the necessary files, please check that "
"they are communicating with the Amiga "
"properly and restart the installer."))
(set ether_card_help (cat "\nIn order for ScreamerNet to function, it "
"needs to know what type of network card you "
"will be using. It is important to note that "
"while ScreamerNet is capable of utilizing the "
"A2060 Arcnet board, the Raptor does not "
"provide for Arcnet. To use ScreamerNet with "
"the Raptor, you must have a supported Ethernet "
"board."))
(set ether_d_help (cat "\nScreamerNet needs to know where the device "
"driver for your network board is located. If "
"you have one of the listed boards, then the "
"ScreamerNet installer will try to locate the "
"board on its own. If you are using a supported, "
"but unlisted board, or your driver for a listed "
"board is not in the standard location of the "
"DEVS:Networks drawer, then you will be asked to "
"locate your driver. Please note that the Raptor "
"does not currently support Arcnet boards, so "
"those ScreamerNet users with Raptors must have "
"a supported Ethernet board."))
(set copy_device_help (cat "\nYou have chosen a board whose driver was "
"not found in the usual location, but was "
"provided with ScreamerNet. You may now choose "
"to install that driver in the DEVS:Network "
"drawer. This driver must be installed to run "
"ScreamerNet."))
(set ftp_help (cat "\nScreamerNet is capable of utilizing two different "
"file transfer protocols: FTP and RCP. Of these two, "
"FTP is generally faster and more reliable. However, "
"if you experience problems with ScreamerNet that seem "
"to be related to file transfer with FTP, you may wish "
"to change to RCP to find out if that solves your "
"problem."))
(onerror
((set del_n 0)
(while (set del_file (select del_n "lz.decomp" "batch.cmd" "batch.ftp"
"startlw.bat" "ftp.scr" "lw.exe"
"script.ftp" "delay.cmd" "done"
"psn" ""))
((set del_file (cat "ram:" del_file))
(if (exists del_file) (delete del_file))
(set del_n (+ del_n 1))))))
(welcome)
(set install_type (askchoice
(prompt (cat "\n\nPlease choose the installation"
" that you would like to perform:"))
(choices "Full Installation"
"Update Lightwave Software")
(help install_type_help)))
(if (= install_type 0)
(
; Install Inet software...
(complete 0)
(set inet_drive (askdir
(prompt (cat "\n\nPlease Select the Drive where "
"you would like to install the "
"network software.\nNOTE: a new "
"directory called 'inet' will be "
"created on this drive."))
(default default_drive)
(help network_drive_help)
(disk)))
(set drive_space (getdiskspace (cat (getdevice inet_drive) ":")))
(while (< drive_space inet_size)
( (message (cat "\n\nSorry... Not enough space on drive "
"for network files. Please free up "
(- inet_size drive_space)
" bytes before proceeding."))
(set drive_space (getdiskspace inet_drive))))
(copyfiles (source (cat disk1 "c/lz.decomp"))
(dest "ram:")
(help copy_lz_help))
(complete 1)
(working "\n\nDecompressing Network files...\n")
(if (= ":" (substr inet_drive (- (strlen inet_drive) 1) 1))
(run (cat "ram:lz.decomp -m x " disk1 "inet " inet_drive "\n"))
(run (cat "ram:lz.decomp -m x " disk1 "inet " inet_drive "/\n")))
;Select Network card drivers
(complete 30)
(set ether_card (askchoice (choices "A2065 Ethernet Card"
"A2060 Arcnet Card"
"EB920 Ethernet Card"
"Other")
(prompt (cat "\n\nPlease select the Network "
"adapter that you will be using"
"with ScreamerNet..."))
(help ether_card_help)))
(if (= ether_card 0)
(if (NOT (exists "devs:networks/a2065.device" (NOREQ)))
((set ether_d (askchoice (prompt (cat "\n\nNo driver was "
"found for that card in "
"DEVS:Networks. Would "
"you like to install the "
"device driver for that "
"card or locate the file "
"for ScreamerNet?"))
(choices "Install Driver"
"Locate Existing Driver")
(help ether_d_help)))
(if ether_d
(copyfiles (source (cat disk1 "devs/networks/a2065.device"))
(dest "devs:networks")
(help copy_device_help))
(set ether_card 3)))
(set driver "devs:networks/a2065.device")))
(if (= ether_card 1)
(if (NOT (exists "devs:networks/a2060.device" (NOREQ)))
((set ether_d (askchoice (prompt (cat "\n\nNo driver was "
"found for that card in "
"DEVS:Networks. Would "
"you like to install the "
"device driver for that "
"card or locate the file "
"for ScreamerNet?"))
(choices "Install Driver"
"Locate Existing Driver")
(help ether_d_help)))
(if ether_d
(copyfiles (source (cat disk1 "devs/networks/a2060.device"))
(dest "devs:networks")
(help copy_device_help))
(set ether_card 3)))
(set driver "devs:networks/a2060.device")))
(if (= ether_card 2)
((set s2_util 1)
(if (NOT (exists "devs:networks/eb920.device" (NOREQ)))
(set ether_card 3)
(set driver "devs:networks/eb920.device"))))
(if (= ether_card 3)
(set driver (askfile (prompt (cat "Please locate the device driver "
"used by your network card..."))
(default "devs:networks")
(help sana2_drivers_help))))
(textfile (dest (tackon inet_drive "inet/s/sana2_devs"))
(append (cat sanaII_devs_main driver " 0 2048 2054\n")))
; Set flags forLightwave installation
(set local_lw 1)
(set net_lw 1)
(set @default-dest (tackon inet_drive "inet"))
)
((set lw_versions (askoptions (choices "Update Local Lightwave"
"Update Lightwave on Screamer(s)")
(Prompt (cat "\n\nPlease select the versions of "
"the Lightwave software that "
"you would like to update."))
(help lw_subinstall_help)))
(set local_lw (BITAND lw_versions 1))
(set net_lw (BITAND lw_versions 2))
)
)
; Install Local Lightwave Software...
(if local_lw
( (complete 35)
(set lw_drive (askdir
(prompt (cat "\n\nPlease Select the Directory where "
"you would like to "
(if install_type "update " "install ")
"the Lightwave software.\n"))
(default (cat default_drive "Toaster"))
(help Lightwave_drive_help)
(disk)))
(if install_type ((set Lightwave_size (- Lightwave_size
(+ (getsize (tackon lw_drive "lightwave.fp"))
(getsize (tackon lw_drive "modeler.fp")))))
(copyfiles (source (cat disk1 "c/lz.decomp"))
(dest "ram:")
(help copy_lz_help))))
(set drive_space (getdiskspace lw_drive))
(while (< drive_space Lightwave_size)
( (message (cat "\n\nSorry... Not enough space on drive "
"for Lightwave files. Please free up "
(- Lightwave_size drive_space)
" bytes before proceeding."))
(set drive_space (getdiskspace lw_drive))))
(askdisk (prompt disk2_prompt)
(dest disk2_name)
(help disk2_help))
(working "\n\nDecompressing Lightwave files...\n")
(if (= ":" (substr lw_drive (- (strlen lw_drive) 1) 1))
(run (cat "ram:lz.decomp -m x " disk2 "lwfp " lw_drive "\n"))
(run (cat "ram:lz.decomp -m x " disk2 "lwfp " lw_drive "/\n"))
)
(if (NOT net_lw)
(if (exists "ram:lz.decomp")
(delete "ram:lz.decomp")))
(if install_type
(set @default-dest lw_drive)
; Add assigns to User-Startup
((if (= ":" (substr inet_drive (- (strlen inet_drive) 1) 1))
(set start_lines (cat "assign inet: " inet_drive "inet\n"))
(set start_lines (cat "assign inet: " inet_drive "/inet\n")))
(run start_lines)
(set start_lines (cat start_lines "assign Toaster: " lw_drive "\n"))
(if s2_util
((set s2_line (cat "c:s2util dev=" driver
" config sa 0.180.252.0.0.1"))
(set start_lines (cat start_lines s2_line "\n"))))
(complete 57)
(set start_option (askbool (prompt (cat "Would you like the "
"ScreamerNet network "
"software to be started "
"upon bootup?"))
(help start_option_help)))
(if start_option
(if (exists "sys:WBStartup")
(copyfiles (source "inet:")
(dest "sys:WBStartup")
(choices "start-screaming" "start-screaming.info"))
(set start_lines (cat start_lines
"execute inet:start-screaming\n"))))
(complete 60)
(startup "ScreamerNet" (command start_lines)
(help user_startup_help)
(prompt (cat "\n\nThe following lines must be added to "
"your user-startup file:\n\n" start_lines))))
)
)
)
; If necessary, extract lw.exe and start network...
(if net_lw
((if (AND install_type (NOT local_lw))
(copyfiles (source (cat disk1 "c/lz.decomp"))
(dest "ram:")
(help copy_lz_help)))
(if (NOT local_lw)
(askdisk (prompt disk2_prompt)
(dest disk2_name)
(help disk2_help)))
(complete 62)
(run s2_line)
(working "\n\nDecompressing Screamer files...\n")
(run (cat "ram:lz.decomp -m x " disk2 "lwexe ram:"))
(delete "ram:lz.decomp")
(if (NOT install_type)
(makeassign "inet" (tackon inet_drive "inet")))
(execute "inet:start-screaming")
(set ftp_option 1)
(if (AND install_type (AND (NOT local_lw) net_lw))
(set ftp_option (askchoice (prompt (cat "\n\nWhich method of file "
"transfer would you like to use?"
"\n\nNote: FTP is recommended."))
(choices "RCP" "FTP")
(default 1)
(help ftp_help))))
(if (NOT install_type)
((textfile (dest "ram:batch.cmd") (append batch_start))
(textfile (dest "ram:batch.ftp") (append ftp_start))
(textfile (dest "ram:delay.cmd") (append delay_cmd))
(protect "ram:batch.cmd" "-w -d")
(protect "ram:batch.ftp" "-w -d")
(protect "ram:delay.cmd" "-w -d")
(complete 82)
(message (cat "\n\nPlease restart all of your Screamer "
"processors now. When all processors have "
"finished starting up, disk activity has "
"stopped, and the Raptor appears to be "
"sitting idle, then click proceed.")
(help batch_start_help))
(protect "ram:batch.cmd" "+w +d")
(protect "ram:batch.ftp" "+w +d")
(protect "ram:delay.cmd" "+w +d")
(delete "ram:batch.cmd")
(delete "ram:batch.ftp")
(delete "ram:delay.cmd")
(textfile (dest "ram:batch.cmd") (append batch_cmd))
(textfile (dest "ram:batch.ftp") (append batch_ftp))
(textfile (dest "ram:ftp.scr") (append ftp_scr))
(textfile (dest "ram:done") (append "done\n"))))
(set screamer_list 0)
(set s_tot 0)
(set s_count 1)
(while (<= s_count 8)
((working (cat "\n\nLooking for Screamer00" s_count "...\n"))
(run (cat "inet:c/ping screamer00" s_count " >ram:psn\n"))
(if (getsize "ram:psn")
((working (cat "\n\nFound Screamer00" s_count "...\n"))
(set s_tot (+ s_tot 1))
(set screamer_list (BITOR screamer_list
(shiftleft 1 (- s_count 1))))))
(set s_count (+ s_count 1))
))
(delete "ram:psn")
(set s_count 1)
(set s_num 0)
(complete 95)
(while (<= s_count 8)
((if (BITAND screamer_list (shiftleft 1 (- s_count 1)))
((working (cat "\n\nSetting up Screamer00" s_count "...\n"))
(set s_num (+ s_num 1))
(textfile (dest "ram:script.ftp")
(append (cat "open screamer00" s_count "\n"
(if install_type
script_ftp_small
script_ftp_body ))))
(if (NOT install_type)
(textfile (dest "ram:startlw.bat")
(append (cat startlw_main s_count " "
s_num " "
(if ftp_option "ftp")
"\n:down\n"
"\\raptor\\shutdown \\\\.\n"
"goto down\n"))))
(run "inet:c/ftp <ram:script.ftp")))
(set s_count (+ s_count 1))))
(complete 99)
(set del_n 0)
(while (set del_file (select del_n "lz.decomp" "batch.cmd" "batch.ftp"
"startlw.bat" "ftp.scr" "lw.exe"
"script.ftp" "psn" "delay.cmd"
"done" ""))
((set del_file (cat "ram:" del_file))
(if (exists del_file) (delete del_file))
(set del_n (+ del_n 1))))
(message (cat "\n\nAll available Screamers have been "
(if install_type "updated. " "installed. ")
"\n\nTotal number of Screamers found: " s_tot "\n\n"
"After the installation has finished, and all lights "
"on the front panel of the Screamer are solidly lit, "
"please restart the Screamer processors." )
(help all_installed_help))))
(complete 100)